/*
背包
容斥定理
*/
#include<bits/stdc++.h>
using namespace std;
long long f[100200];
int c[5],n;
int main(){
	for(int i=1;i<=4;++i)
	scanf("%d",&c[i]);
	scanf("%d",&n);
	f[0]=1;
	for(int i=1;i<=4;++i)
	for(int j=c[i];j<=100000;++j)
	f[j]+=f[j-c[i]];
	while(n--){
		int d[5];
		for(int i=1,x;i<=4;++i){
			scanf("%d",&d[i]);
		}
		int s;
		scanf("%d",&s);
		long long ans=0;
		for(int i=0;i<=15;++i){
			int sum=s;
			int t=0;	
			for(int j=0;j<=3;++j)
			if((i>>j)&1){
				sum-=c[j+1]*(d[j+1]+1);
				t^=1;
			}
			if(sum<0)continue;
			if(t==0)ans+=f[sum];
			else ans-=f[sum];
		}
		printf("%lld\n",ans);
	}
}